package cn.xd.core.ddd.value;

import cn.hutool.json.JSONUtil;
import cn.xd.common.exception.BizException;
import cn.xd.core.ddd.value.basic.Value;

/**
 * @author: mirzaLin
 * @data: 2023/11/19
 * @description: json数组属性
 **/
public class JsonArrayValue extends Value<String> {

    public JsonArrayValue() {
        super();
    }

    public JsonArrayValue(String value) {
        super(value);
        if (!JSONUtil.isTypeJSONArray(value)) {
            throw new BizException("参数需要为json数组格式:" + value);
        }
    }

    /**
     * 对值进行业务校验
     */
    public static JsonArrayValue of(String value) {

        JsonArrayValue obj = new JsonArrayValue(value);
        obj.validate(value);
        return obj;
    }
}
